package org.example.memora.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.example.memora.entity.HashTag;

import java.util.List;

@Mapper
public interface HashtagMapper extends BaseMapper<HashTag> {
    // 1. 根据ID查询
    HashTag selectById(@Param("id") Integer id);

    // 2. 根据名称精确查询
    HashTag selectByName(@Param("name") String name);

    // 3. 插入新标签
    int insertHashtag(HashTag hashtag);

    // 4. 更新标签
    int updateHashtag(HashTag hashtag);

    // 5. 模糊搜索
    List<HashTag> selectByNameLike(@Param("keyword") String keyword);

    // 6. 查询所有
    List<HashTag> selectAll();

    // 7. 根据多个 ID 统计数量
    int countByIds(@Param("ids") List<Integer> ids);

    long countTotal();

    List<HashTag> selectPage(@Param("offset") int offset, @Param("limit") int limit);



}
